Search results for "Amortized analysis"

showing 10 items of 11 documents

Gray code for permutations with a fixed number of cycles

2007

AbstractWe give the first Gray code for the set of n-length permutations with a given number of cycles. In this code, each permutation is transformed into its successor by a product with a cycle of length three, which is optimal. If we represent each permutation by its transposition array then the obtained list still remains a Gray code and this allows us to construct a constant amortized time (CAT) algorithm for generating these codes. Also, Gray code and generating algorithm for n-length permutations with fixed number of left-to-right minima are discussed.

Golomb–Dickman constantPolynomial codeRestricted permutationsGenerating algorithms0102 computer and information sciences02 engineering and technology01 natural sciencesTheoretical Computer ScienceGray codeCombinatoricsPermutation[MATH.MATH-CO]Mathematics [math]/Combinatorics [math.CO]0202 electrical engineering electronic engineering information engineeringDiscrete Mathematics and CombinatoricsTransposition arrayComputingMilieux_MISCELLANEOUSMathematicsDiscrete mathematicsSelf-synchronizing codeAmortized analysisMathematics::CombinatoricsParity of a permutation020206 networking & telecommunicationsGray codes010201 computation theory & mathematicsConstant-weight codeMathematicsofComputing_DISCRETEMATHEMATICS
researchProduct

Dynamic 2- and 3-connectivity on planar graphs

1992

We study the problem of maintaining the 2-edge-, 2-vertex-, and 3-edge-connected components of a dynamic planar graph subject to edge deletions. The 2-edge-connected components can be maintained in a total of O(n log n) time under any sequence of at most O(n) deletions. This gives O(log n) amortized time per deletion. The 2-vertex- and 3-edge-connected components can be maintained in a total of O(n log2n) time. This gives O(log2n) amortized time per deletion. The space required by all our data structures is O(n).

Amortized analysisBook embeddingPlanar straight-line graph1-planar graphPlanar graphCombinatoricssymbols.namesakePathwidthChordal graphTheoryofComputation_ANALYSISOFALGORITHMSANDPROBLEMCOMPLEXITYOuterplanar graphData_FILESsymbolsMathematicsofComputing_DISCRETEMATHEMATICSMathematics
researchProduct

On Combinatorial Generation of Prefix Normal Words

2014

A prefix normal word is a binary word with the property that no substring has more 1s than the prefix of the same length. This class of words is important in the context of binary jumbled pattern matching. In this paper we present an efficient algorithm for exhaustively listing the prefix normal words with a fixed length. The algorithm is based on the fact that the language of prefix normal words is a bubble language, a class of binary languages with the property that, for any word w in the language, exchanging the first occurrence of 01 by 10 in w results in another word in the language. We prove that each prefix normal word is produced in O(n) amortized time, and conjecture, based on expe…

Amortized analysisConjecturePrefix Normal WordBinary numbercombinatorial generation; formal languages; prefix normal words; binary strings; jumbled pattern matching; bubble languages; efficient algorithmsContext (language use)prefix normal wordsData_CODINGANDINFORMATIONTHEORYformal languagesbubble languagesSubstringcombinatorial generationbinary stringsPrefixCombinatoricsjumbled pattern matchingefficient algorithmsPattern matchingAlgorithmsWord (computer architecture)Mathematics
researchProduct

Generating a Gray code for prefix normal words in amortized polylogarithmic time per word

2020

A prefix normal word is a binary word with the property that no substring has more $1$s than the prefix of the same length. By proving that the set of prefix normal words is a bubble language, we can exhaustively list all prefix normal words of length $n$ as a combinatorial Gray code, where successive strings differ by at most two swaps or bit flips. This Gray code can be generated in $\Oh(\log^2 n)$ amortized time per word, while the best generation algorithm hitherto has $\Oh(n)$ running time per word. We also present a membership tester for prefix normal words, as well as a novel characterization of bubble languages.

FOS: Computer and information sciencesGeneral Computer ScienceFormal Languages and Automata Theory (cs.FL)Property (programming)combinatorial Gray codeComputer Science - Formal Languages and Automata TheoryData_CODINGANDINFORMATIONTHEORY0102 computer and information sciences02 engineering and technologyCharacterization (mathematics)01 natural sciencesTheoretical Computer ScienceCombinatoricsSet (abstract data type)Gray codeComputer Science - Data Structures and Algorithms0202 electrical engineering electronic engineering information engineeringData Structures and Algorithms (cs.DS)MathematicsAmortized analysisSettore INF/01 - Informaticaprefix normal wordsSubstringcombinatorial generationPrefixjumbled pattern matching010201 computation theory & mathematics020201 artificial intelligence & image processingbinary languagesprefix normal words binary languages combinatorial Gray code combinatorial generation jumbled pattern matchingWord (computer architecture)Theoretical Computer Science
researchProduct

WarpCore: A Library for fast Hash Tables on GPUs

2020

Hash tables are ubiquitous. Properties such as an amortized constant time complexity for insertion and querying as well as a compact memory layout make them versatile associative data structures with manifold applications. The rapidly growing amount of data emerging in many fields motivated the need for accelerated hash tables designed for modern parallel architectures. In this work, we exploit the fast memory interface of modern GPUs together with a parallel hashing scheme tailored to improve global memory access patterns, to design WarpCore -- a versatile library of hash table data structures. Unique device-sided operations allow for building high performance data processing pipelines ent…

FOS: Computer and information sciencesScheme (programming language)Amortized analysisComputer scienceHash functionParallel computingData structureHash tableCUDAComputer Science - Distributed Parallel and Cluster ComputingServerDistributed Parallel and Cluster Computing (cs.DC)Throughput (business)computercomputer.programming_language2020 IEEE 27th International Conference on High Performance Computing, Data, and Analytics (HiPC)
researchProduct

On the loopless generation of binary tree sequences

1998

Weight sequences were introduced by Pallo in 1986 for coding binary trees and he presented a constant amortized time algorithm for their generation in lexicographic order. A year later, Roelants van Baronaigien and Ruskey developed a recursive constant amortized time algorithm for generating Gray code for binary trees in Pallo's representation. It is common practice to find a loopless generating algorithm for a combinatorial object when enunciating a Gray code for this object. In this paper we regard weight sequences as variations and apply a Williamson algorithm in order to obtain a loopless generating algorithm for the Roelants van Baronaigien and Ruskey's Gray code for weight sequences.

Discrete mathematicsAmortized analysisBinary treeLexicographical orderPseudorandom binary sequenceComputer Science ApplicationsTheoretical Computer ScienceGray codeCombinatoricsSignal ProcessingBinary codeInformation SystemsCoding (social sciences)MathematicsInformation Processing Letters
researchProduct

Right-Justified Characterization for Generating Regular Pattern Avoiding Permutations

2017

ECO-method and its corresponding succession rules allow to recursively define and construct combinatorial objects. The induced generating trees can be coded by corresponding pattern avoiding permutations. We refine succession rules by using succession functions in case when avoided patterns are regular or c-regular. Although regular patterns are hard to be recognized in general, we give a characterization for its right-justified property which is a prerequisite in the definition of the regular pattern. Based on this characterization, we show the (c-)regularity for various classes of permutations avoiding sets of patterns with variable lengths. Last, the technique of succession functions per…

CombinatoricsVariable (computer science)Amortized analysisComputer scienceProperty (programming)Regular patternConstruct (python library)Characterization (mathematics)Constant (mathematics)
researchProduct

Handling precedence constraints in scheduling problems by the sequence pair representation

2015

In this paper, we show that sequence pair (SP) representation, primarily applied to the rectangle packing problems appearing in the VLSI industry, can be a solution representation of precedence constrained scheduling. We present three interpretations of sequence pair, which differ in complexity of schedule evaluation and size of a corresponding solution space. For each interpretation we construct an incremental precedence constrained SP neighborhood evaluation algorithm, computing feasibility of each solution in the insert neighborhood in an amortized constant time per examined solution, and prove the connectivity property of the considered neighborhoods. To compare proposed interpretations…

Mathematical optimizationPrecedence diagram methodControl and Optimizationrectangle packing problemMultiprocessing0102 computer and information sciences02 engineering and technology01 natural sciencesScheduling (computing)0202 electrical engineering electronic engineering information engineeringDiscrete Mathematics and CombinatoricsschedulingComputer Science::Operating SystemsMathematicsVery-large-scale integrationAmortized analysisApplied MathematicsJob scheduling problemComputer Science ApplicationsComputational Theory and Mathematics010201 computation theory & mathematicsMetaheuristic algorithmsTheory of computation020201 artificial intelligence & image processingAlgorithmprecedence constraintssequence pairJournal of Combinatorial Optimization
researchProduct

An Efficient Algorithm for the Generation of Z-Convex Polyominoes

2014

We present a characterization of Z-convex polyominoes in terms of pairs of suitable integer vectors. This lets us design an algorithm which generates all Z-convex polyominoes of size n in constant amortized time.

Discrete mathematicsAmortized analysisMathematics::CombinatoricsSettore INF/01 - InformaticaPolyominoEfficient algorithmRegular polygonComputer Science::Computational GeometryCharacterization (mathematics)CombinatoricsIntegerComputer Science::Discrete MathematicsTheoryofComputation_ANALYSISOFALGORITHMSANDPROBLEMCOMPLEXITYConstant (mathematics)TetrominoZ-convex polyominoes generation.Mathematics
researchProduct

On the exhaustive generation of k-convex polyominoes

2017

The degree of convexity of a convex polyomino P is the smallest integer k such that any two cells of P can be joined by a monotone path inside P with at most k changes of direction. In this paper we present a simple algorithm for computing the degree of convexity of a convex polyomino and we show how it can be used to design an algorithm that generates, given an integer k, all k-convex polyominoes of area n in constant amortized time, using space O(n). Furthermore, by applying few changes, we are able to generate all convex polyominoes whose degree of convexity is exactly k.

General Computer SciencePolyomino0102 computer and information sciences02 engineering and technologyComputer Science::Computational Geometry01 natural sciencesConvexityTheoretical Computer ScienceCombinatoricsCAT algorithmIntegerExhaustive generation0202 electrical engineering electronic engineering information engineeringConvex polyominoeConvexity K-convex polyominoes.Convex polyominoesComputer Science::DatabasesMathematicsDiscrete mathematicsAmortized analysisMathematics::CombinatoricsDegree (graph theory)Settore INF/01 - InformaticaComputer Science (all)Regular polygonMonotone polygon010201 computation theory & mathematicsPath (graph theory)020201 artificial intelligence & image processingCAT algorithms; Convex polyominoes; Exhaustive generation;CAT algorithms
researchProduct